<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>GDBusObjectManagerClient</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
<link rel="home" href="index.html" title="GIO Reference Manual">
<link rel="up" href="gdbus-convenience.html" title="Highlevel D-Bus Support">
<link rel="prev" href="GDBusObjectManagerServer.html" title="GDBusObjectManagerServer">
<link rel="next" href="settings.html" title="Settings">
<meta name="generator" content="GTK-Doc V1.17 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
<tr valign="middle">
<td><a accesskey="p" href="GDBusObjectManagerServer.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
<td><a accesskey="u" href="gdbus-convenience.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
<th width="100%" align="center">GIO Reference Manual</th>
<td><a accesskey="n" href="settings.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
</tr>
<tr><td colspan="5" class="shortcuts">
<a href="#GDBusObjectManagerClient.synopsis" class="shortcut">Top</a>
                   | 
                  <a href="#GDBusObjectManagerClient.description" class="shortcut">Description</a>
                   | 
                  <a href="#GDBusObjectManagerClient.object-hierarchy" class="shortcut">Object Hierarchy</a>
                   | 
                  <a href="#GDBusObjectManagerClient.implemented-interfaces" class="shortcut">Implemented Interfaces</a>
                   | 
                  <a href="#GDBusObjectManagerClient.properties" class="shortcut">Properties</a>
                   | 
                  <a href="#GDBusObjectManagerClient.signals" class="shortcut">Signals</a>
</td></tr>
</table>
<div class="refentry">
<a name="GDBusObjectManagerClient"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="GDBusObjectManagerClient.top_of_page"></a>GDBusObjectManagerClient</span></h2>
<p>GDBusObjectManagerClient — Client-side object manager</p>
</td>
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsynopsisdiv">
<a name="GDBusObjectManagerClient.synopsis"></a><h2>Synopsis</h2>
<pre class="synopsis">
#include &lt;gio/gio.h&gt;

                    <a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient-struct" title="GDBusObjectManagerClient">GDBusObjectManagerClient</a>;
struct              <a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClientClass" title="struct GDBusObjectManagerClientClass">GDBusObjectManagerClientClass</a>;
enum                <a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClientFlags" title="enum GDBusObjectManagerClientFlags">GDBusObjectManagerClientFlags</a>;
<a href="./../gobject/gobject/gobject-Type-Information.html#GType"><span class="returnvalue">GType</span></a>               (<a class="link" href="GDBusObjectManagerClient.html#GDBusProxyTypeFunc" title="GDBusProxyTypeFunc ()">*GDBusProxyTypeFunc</a>)               (<em class="parameter"><code><a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> *manager</code></em>,
                                                         <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *object_path</code></em>,
                                                         <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *interface_name</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-new" title="g_dbus_object_manager_client_new ()">g_dbus_object_manager_client_new</a>    (<em class="parameter"><code><a class="link" href="GDBusConnection.html" title="GDBusConnection"><span class="type">GDBusConnection</span></a> *connection</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClientFlags" title="enum GDBusObjectManagerClientFlags"><span class="type">GDBusObjectManagerClientFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
                                                         <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *object_path</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GDBusObjectManagerClient.html#GDBusProxyTypeFunc" title="GDBusProxyTypeFunc ()"><span class="type">GDBusProxyTypeFunc</span></a> get_proxy_type_func</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> get_proxy_type_user_data</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> get_proxy_type_destroy_notify</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
<a class="link" href="GDBusObjectManager.html" title="GDBusObjectManager"><span class="returnvalue">GDBusObjectManager</span></a> * <a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-new-finish" title="g_dbus_object_manager_client_new_finish ()">g_dbus_object_manager_client_new_finish</a>
                                                        (<em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *res</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<a class="link" href="GDBusObjectManager.html" title="GDBusObjectManager"><span class="returnvalue">GDBusObjectManager</span></a> * <a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-new-sync" title="g_dbus_object_manager_client_new_sync ()">g_dbus_object_manager_client_new_sync</a>
                                                        (<em class="parameter"><code><a class="link" href="GDBusConnection.html" title="GDBusConnection"><span class="type">GDBusConnection</span></a> *connection</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClientFlags" title="enum GDBusObjectManagerClientFlags"><span class="type">GDBusObjectManagerClientFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
                                                         <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *object_path</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GDBusObjectManagerClient.html#GDBusProxyTypeFunc" title="GDBusProxyTypeFunc ()"><span class="type">GDBusProxyTypeFunc</span></a> get_proxy_type_func</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> get_proxy_type_user_data</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> get_proxy_type_destroy_notify</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-new-for-bus" title="g_dbus_object_manager_client_new_for_bus ()">g_dbus_object_manager_client_new_for_bus</a>
                                                        (<em class="parameter"><code><a class="link" href="GDBusConnection.html#GBusType" title="enum GBusType"><span class="type">GBusType</span></a> bus_type</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClientFlags" title="enum GDBusObjectManagerClientFlags"><span class="type">GDBusObjectManagerClientFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
                                                         <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *object_path</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GDBusObjectManagerClient.html#GDBusProxyTypeFunc" title="GDBusProxyTypeFunc ()"><span class="type">GDBusProxyTypeFunc</span></a> get_proxy_type_func</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> get_proxy_type_user_data</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> get_proxy_type_destroy_notify</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
<a class="link" href="GDBusObjectManager.html" title="GDBusObjectManager"><span class="returnvalue">GDBusObjectManager</span></a> * <a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-new-for-bus-finish" title="g_dbus_object_manager_client_new_for_bus_finish ()">g_dbus_object_manager_client_new_for_bus_finish</a>
                                                        (<em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *res</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<a class="link" href="GDBusObjectManager.html" title="GDBusObjectManager"><span class="returnvalue">GDBusObjectManager</span></a> * <a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-new-for-bus-sync" title="g_dbus_object_manager_client_new_for_bus_sync ()">g_dbus_object_manager_client_new_for_bus_sync</a>
                                                        (<em class="parameter"><code><a class="link" href="GDBusConnection.html#GBusType" title="enum GBusType"><span class="type">GBusType</span></a> bus_type</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClientFlags" title="enum GDBusObjectManagerClientFlags"><span class="type">GDBusObjectManagerClientFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
                                                         <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *object_path</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GDBusObjectManagerClient.html#GDBusProxyTypeFunc" title="GDBusProxyTypeFunc ()"><span class="type">GDBusProxyTypeFunc</span></a> get_proxy_type_func</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> get_proxy_type_user_data</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> get_proxy_type_destroy_notify</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<a class="link" href="GDBusConnection.html" title="GDBusConnection"><span class="returnvalue">GDBusConnection</span></a> *   <a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-get-connection" title="g_dbus_object_manager_client_get_connection ()">g_dbus_object_manager_client_get_connection</a>
                                                        (<em class="parameter"><code><a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> *manager</code></em>);
<a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClientFlags" title="enum GDBusObjectManagerClientFlags"><span class="returnvalue">GDBusObjectManagerClientFlags</span></a>  <a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-get-flags" title="g_dbus_object_manager_client_get_flags ()">g_dbus_object_manager_client_get_flags</a>
                                                        (<em class="parameter"><code><a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> *manager</code></em>);
const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *       <a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-get-name" title="g_dbus_object_manager_client_get_name ()">g_dbus_object_manager_client_get_name</a>
                                                        (<em class="parameter"><code><a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> *manager</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *             <a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-get-name-owner" title="g_dbus_object_manager_client_get_name_owner ()">g_dbus_object_manager_client_get_name_owner</a>
                                                        (<em class="parameter"><code><a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> *manager</code></em>);
</pre>
</div>
<div class="refsect1">
<a name="GDBusObjectManagerClient.object-hierarchy"></a><h2>Object Hierarchy</h2>
<pre class="synopsis">
  <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#GObject">GObject</a>
   +----GDBusObjectManagerClient
</pre>
</div>
<div class="refsect1">
<a name="GDBusObjectManagerClient.implemented-interfaces"></a><h2>Implemented Interfaces</h2>
<p>
GDBusObjectManagerClient implements
 <a class="link" href="GInitable.html" title="GInitable">GInitable</a>,  <a class="link" href="GAsyncInitable.html" title="GAsyncInitable">GAsyncInitable</a> and  <a class="link" href="GDBusObjectManager.html" title="GDBusObjectManager">GDBusObjectManager</a>.</p>
</div>
<div class="refsect1">
<a name="GDBusObjectManagerClient.properties"></a><h2>Properties</h2>
<pre class="synopsis">
  "<a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--bus-type" title='The "bus-type" property'>bus-type</a>"                 <a class="link" href="GDBusConnection.html#GBusType" title="enum GBusType"><span class="type">GBusType</span></a>              : Write / Construct Only
  "<a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--connection" title='The "connection" property'>connection</a>"               <a class="link" href="GDBusConnection.html" title="GDBusConnection"><span class="type">GDBusConnection</span></a>*      : Read / Write / Construct Only
  "<a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--flags" title='The "flags" property'>flags</a>"                    <a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClientFlags" title="enum GDBusObjectManagerClientFlags"><span class="type">GDBusObjectManagerClientFlags</span></a>  : Read / Write / Construct Only
  "<a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--get-proxy-type-destroy-notify" title='The "get-proxy-type-destroy-notify" property'>get-proxy-type-destroy-notify</a>" <a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>              : Read / Write / Construct Only
  "<a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--get-proxy-type-func" title='The "get-proxy-type-func" property'>get-proxy-type-func</a>"      <a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>              : Read / Write / Construct Only
  "<a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--get-proxy-type-user-data" title='The "get-proxy-type-user-data" property'>get-proxy-type-user-data</a>" <a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>              : Read / Write / Construct Only
  "<a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--name" title='The "name" property'>name</a>"                     <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>*                : Read / Write / Construct Only
  "<a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--name-owner" title='The "name-owner" property'>name-owner</a>"               <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>*                : Read
  "<a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--object-path" title='The "object-path" property'>object-path</a>"              <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>*                : Read / Write / Construct Only
</pre>
</div>
<div class="refsect1">
<a name="GDBusObjectManagerClient.signals"></a><h2>Signals</h2>
<pre class="synopsis">
  "<a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient-interface-proxy-properties-changed" title='The "interface-proxy-properties-changed" signal'>interface-proxy-properties-changed</a>"             : <a href="./../gobject/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS"><code class="literal">Run Last</code></a>
  "<a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient-interface-proxy-signal" title='The "interface-proxy-signal" signal'>interface-proxy-signal</a>"                         : <a href="./../gobject/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS"><code class="literal">Run Last</code></a>
</pre>
</div>
<div class="refsect1">
<a name="GDBusObjectManagerClient.description"></a><h2>Description</h2>
<p>
<a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> is used to create, monitor and delete object
proxies for remote objects exported by a <a class="link" href="GDBusObjectManagerServer.html" title="GDBusObjectManagerServer"><span class="type">GDBusObjectManagerServer</span></a> (or any
code implementing the <a class="ulink" href="http://dbus.freedesktop.org/doc/dbus-specification.html#standard-interfaces-objectmanager" target="_top">org.freedesktop.DBus.ObjectManager</a>
interface).
</p>
<p>
Once an instance of this type has been created, you can connect to
the <a class="link" href="GDBusObjectManager.html#GDBusObjectManager-object-added" title='The "object-added" signal'><span class="type">"object-added"</span></a> and
<a class="link" href="GDBusObjectManager.html#GDBusObjectManager-object-removed" title='The "object-removed" signal'><span class="type">"object-removed"</span></a> signals and inspect the
<a class="link" href="GDBusObjectProxy.html" title="GDBusObjectProxy"><span class="type">GDBusObjectProxy</span></a> objects returned by
<a class="link" href="GDBusObjectManager.html#g-dbus-object-manager-get-objects" title="g_dbus_object_manager_get_objects ()"><code class="function">g_dbus_object_manager_get_objects()</code></a>.
</p>
<p>
If the name for a <a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> is not owned by anyone at
object construction time, the default behavior is to request the
message bus to launch an owner for the name. This behavior can be
disabled using the <a class="link" href="GDBusObjectManagerClient.html#G-DBUS-OBJECT-MANAGER-CLIENT-FLAGS-DO-NOT-AUTO-START:CAPS"><code class="literal">G_DBUS_OBJECT_MANAGER_CLIENT_FLAGS_DO_NOT_AUTO_START</code></a>
flag. It's also worth noting that this only works if the name of
interest is activatable in the first place. E.g. in some cases it
is not possible to launch an owner for the requested name. In this
case, <a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> object construction still succeeds but
there will be no object proxies
(e.g. <a class="link" href="GDBusObjectManager.html#g-dbus-object-manager-get-objects" title="g_dbus_object_manager_get_objects ()"><code class="function">g_dbus_object_manager_get_objects()</code></a> returns the empty list) and
the <a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--name-owner" title='The "name-owner" property'><span class="type">"name-owner"</span></a> property is <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.
</p>
<p>
The owner of the requested name can come and go (for example
consider a system service being restarted) – <a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a>
handles this case too; simply connect to the <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#GObject-notify"><span class="type">"notify"</span></a>
signal to watch for changes on the <a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--name-owner" title='The "name-owner" property'><span class="type">"name-owner"</span></a>
property. When the name owner vanishes, the behavior is that
<a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--name-owner" title='The "name-owner" property'><span class="type">"name-owner"</span></a> is set to <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> (this includes
emission of the <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#GObject-notify"><span class="type">"notify"</span></a> signal) and then
<a class="link" href="GDBusObjectManager.html#GDBusObjectManager-object-removed" title='The "object-removed" signal'><span class="type">"object-removed"</span></a> signals are synthesized
for all currently existing object proxies. Since
<a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--name-owner" title='The "name-owner" property'><span class="type">"name-owner"</span></a> is <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when this happens, you can
use this information to disambiguate a synthesized signal from a
genuine signal caused by object removal on the remote
<a class="link" href="GDBusObjectManager.html" title="GDBusObjectManager"><span class="type">GDBusObjectManager</span></a>. Similarly, when a new name owner appears,
<a class="link" href="GDBusObjectManager.html#GDBusObjectManager-object-added" title='The "object-added" signal'><span class="type">"object-added"</span></a> signals are synthesized
while <a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--name-owner" title='The "name-owner" property'><span class="type">"name-owner"</span></a> is still <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. Only when all
object proxies have been added, the <a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--name-owner" title='The "name-owner" property'><span class="type">"name-owner"</span></a>
is set to the new name owner (this includes emission of the
<a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#GObject-notify"><span class="type">"notify"</span></a> signal).  Furthermore, you are guaranteed that
<a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--name-owner" title='The "name-owner" property'><span class="type">"name-owner"</span></a> will alternate between a name owner
(e.g. <code class="literal">:1.42</code>) and <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> even in the case where
the name of interest is atomically replaced
</p>
<p>
Ultimately, <a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> is used to obtain <a class="link" href="GDBusProxy.html" title="GDBusProxy"><span class="type">GDBusProxy</span></a>
instances. All signals (including the
<code class="literal">org.freedesktop.DBus.Properties::PropertiesChanged</code>
signal) delivered to <a class="link" href="GDBusProxy.html" title="GDBusProxy"><span class="type">GDBusProxy</span></a> instances are guaranteed to
originate from the name owner. This guarantee along with the
behavior described above, means that certain race conditions
including the <span class="emphasis"><em><span class="quote">“<span class="quote">half the proxy is from the old owner
and the other half is from the new owner</span>”</span></em></span> problem
cannot happen.
</p>
<p>
To avoid having the application connect to signals on the returned
<a class="link" href="GDBusObjectProxy.html" title="GDBusObjectProxy"><span class="type">GDBusObjectProxy</span></a> and <a class="link" href="GDBusProxy.html" title="GDBusProxy"><span class="type">GDBusProxy</span></a> objects, the
<a class="link" href="GDBusObject.html#GDBusObject-interface-added" title='The "interface-added" signal'><span class="type">"interface-added"</span></a>,
<a class="link" href="GDBusObject.html#GDBusObject-interface-removed" title='The "interface-removed" signal'><span class="type">"interface-removed"</span></a>,
<a class="link" href="GDBusProxy.html#GDBusProxy-g-properties-changed" title='The "g-properties-changed" signal'><span class="type">"g-properties-changed"</span></a> and
<a class="link" href="GDBusProxy.html#GDBusProxy-g-signal" title='The "g-signal" signal'><span class="type">"g-signal"</span></a> signals
are also emitted on the <a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> instance managing these
objects. The signals emitted are
<a class="link" href="GDBusObjectManager.html#GDBusObjectManager-interface-added" title='The "interface-added" signal'><span class="type">"interface-added"</span></a>,
<a class="link" href="GDBusObjectManager.html#GDBusObjectManager-interface-removed" title='The "interface-removed" signal'><span class="type">"interface-removed"</span></a>,
<a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient-interface-proxy-properties-changed" title='The "interface-proxy-properties-changed" signal'><span class="type">"interface-proxy-properties-changed"</span></a> and
<a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient-interface-proxy-signal" title='The "interface-proxy-signal" signal'><span class="type">"interface-proxy-signal"</span></a>.
</p>
<p>
Note that all callbacks and signals are emitted in the
<a href="./../glib/glib/glib-The-Main-Event-Loop.html#g-main-context-push-thread-default">thread-default main loop</a>
that the <a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> object was constructed
in. Additionally, the <a class="link" href="GDBusObjectProxy.html" title="GDBusObjectProxy"><span class="type">GDBusObjectProxy</span></a> and <a class="link" href="GDBusProxy.html" title="GDBusProxy"><span class="type">GDBusProxy</span></a> objects
originating from the <a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> object will be created in
the same context and, consequently, will deliver signals in the
same main loop.
</p>
</div>
<div class="refsect1">
<a name="GDBusObjectManagerClient.details"></a><h2>Details</h2>
<div class="refsect2">
<a name="GDBusObjectManagerClient-struct"></a><h3>GDBusObjectManagerClient</h3>
<pre class="programlisting">typedef struct _GDBusObjectManagerClient GDBusObjectManagerClient;</pre>
<p>
The <a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> structure contains private data and should
only be accessed using the provided API.
</p>
<p class="since">Since 2.30</p>
</div>
<hr>
<div class="refsect2">
<a name="GDBusObjectManagerClientClass"></a><h3>struct GDBusObjectManagerClientClass</h3>
<pre class="programlisting">struct GDBusObjectManagerClientClass {
  GObjectClass parent_class;

  /* signals */
  void    (*interface_proxy_signal)             (GDBusObjectManagerClient *manager,
                                                 GDBusObjectProxy         *object_proxy,
                                                 GDBusProxy               *interface_proxy,
                                                 const gchar              *sender_name,
                                                 const gchar              *signal_name,
                                                 GVariant                 *parameters);

  void    (*interface_proxy_properties_changed) (GDBusObjectManagerClient   *manager,
                                                 GDBusObjectProxy           *object_proxy,
                                                 GDBusProxy                 *interface_proxy,
                                                 GVariant                   *changed_properties,
                                                 const gchar* const         *invalidated_properties);
};
</pre>
<p>
Class structure for <a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#GObjectClass"><span class="type">GObjectClass</span></a> <em class="structfield"><code><a name="GDBusObjectManagerClientClass.parent-class"></a>parent_class</code></em>;</span></p></td>
<td>The parent class.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GDBusObjectManagerClientClass.interface-proxy-signal"></a>interface_proxy_signal</code></em> ()</span></p></td>
<td>Signal class handler for the <a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient-interface-proxy-signal" title='The "interface-proxy-signal" signal'><span class="type">"interface-proxy-signal"</span></a> signal.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GDBusObjectManagerClientClass.interface-proxy-properties-changed"></a>interface_proxy_properties_changed</code></em> ()</span></p></td>
<td>Signal class handler for the <a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient-interface-proxy-properties-changed" title='The "interface-proxy-properties-changed" signal'><span class="type">"interface-proxy-properties-changed"</span></a> signal.</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.30</p>
</div>
<hr>
<div class="refsect2">
<a name="GDBusObjectManagerClientFlags"></a><h3>enum GDBusObjectManagerClientFlags</h3>
<pre class="programlisting">typedef enum
{
  G_DBUS_OBJECT_MANAGER_CLIENT_FLAGS_NONE = 0,
  G_DBUS_OBJECT_MANAGER_CLIENT_FLAGS_DO_NOT_AUTO_START = (1&lt;&lt;0)
} GDBusObjectManagerClientFlags;
</pre>
<p>
Flags used when constructing a <a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><a name="G-DBUS-OBJECT-MANAGER-CLIENT-FLAGS-NONE:CAPS"></a><span class="term"><code class="literal">G_DBUS_OBJECT_MANAGER_CLIENT_FLAGS_NONE</code></span></p></td>
<td>No flags set.
</td>
</tr>
<tr>
<td><p><a name="G-DBUS-OBJECT-MANAGER-CLIENT-FLAGS-DO-NOT-AUTO-START:CAPS"></a><span class="term"><code class="literal">G_DBUS_OBJECT_MANAGER_CLIENT_FLAGS_DO_NOT_AUTO_START</code></span></p></td>
<td>If not set and the
  manager is for a well-known name, then request the bus to launch
  an owner for the name if no-one owns the name. This flag can only
  be used in managers for well-known names.
</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.30</p>
</div>
<hr>
<div class="refsect2">
<a name="GDBusProxyTypeFunc"></a><h3>GDBusProxyTypeFunc ()</h3>
<pre class="programlisting"><a href="./../gobject/gobject/gobject-Type-Information.html#GType"><span class="returnvalue">GType</span></a>               (*GDBusProxyTypeFunc)               (<em class="parameter"><code><a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> *manager</code></em>,
                                                         <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *object_path</code></em>,
                                                         <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *interface_name</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
<p>
Function signature for a function used to determine the <a href="./../gobject/gobject/gobject-Type-Information.html#GType"><span class="type">GType</span></a> to
use for an interface proxy (if <em class="parameter"><code>interface_name</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>) or
object proxy (if <em class="parameter"><code>interface_name</code></em> is <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>).
</p>
<p>
This function is called in the
<a href="./../glib/glib/glib-The-Main-Event-Loop.html#g-main-context-push-thread-default">thread-default main loop</a>
that <em class="parameter"><code>manager</code></em> was constructed in.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>manager</code></em> :</span></p></td>
<td>A <a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>object_path</code></em> :</span></p></td>
<td>The object path of the remote object.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>interface_name</code></em> :</span></p></td>
<td>The interface name of the remote object or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if a <a class="link" href="GDBusObjectProxy.html" title="GDBusObjectProxy"><span class="type">GDBusObjectProxy</span></a> <a href="./../gobject/gobject/gobject-Type-Information.html#GType"><span class="type">GType</span></a> is requested. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>User data.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>A <a href="./../gobject/gobject/gobject-Type-Information.html#GType"><span class="type">GType</span></a> to use for the remote object. The returned type
must be a <a class="link" href="GDBusProxy.html" title="GDBusProxy"><span class="type">GDBusProxy</span></a>- or <a class="link" href="GDBusObjectProxy.html" title="GDBusObjectProxy"><span class="type">GDBusObjectProxy</span></a>-derived
type.</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.30</p>
</div>
<hr>
<div class="refsect2">
<a name="g-dbus-object-manager-client-new"></a><h3>g_dbus_object_manager_client_new ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                g_dbus_object_manager_client_new    (<em class="parameter"><code><a class="link" href="GDBusConnection.html" title="GDBusConnection"><span class="type">GDBusConnection</span></a> *connection</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClientFlags" title="enum GDBusObjectManagerClientFlags"><span class="type">GDBusObjectManagerClientFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
                                                         <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *object_path</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GDBusObjectManagerClient.html#GDBusProxyTypeFunc" title="GDBusProxyTypeFunc ()"><span class="type">GDBusProxyTypeFunc</span></a> get_proxy_type_func</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> get_proxy_type_user_data</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> get_proxy_type_destroy_notify</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
<p>
Asynchronously creates a new <a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> object.
</p>
<p>
This is an asynchronous failable constructor. When the result is
ready, <em class="parameter"><code>callback</code></em> will be invoked in the
<a href="./../glib/glib/glib-The-Main-Event-Loop.html#g-main-context-push-thread-default">thread-default main loop</a>
of the thread you are calling this method from. You can
then call <a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-new-finish" title="g_dbus_object_manager_client_new_finish ()"><code class="function">g_dbus_object_manager_client_new_finish()</code></a> to get the result. See
<a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-new-sync" title="g_dbus_object_manager_client_new_sync ()"><code class="function">g_dbus_object_manager_client_new_sync()</code></a> for the synchronous version.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>connection</code></em> :</span></p></td>
<td>A <a class="link" href="GDBusConnection.html" title="GDBusConnection"><span class="type">GDBusConnection</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>Zero or more flags from the <a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClientFlags" title="enum GDBusObjectManagerClientFlags"><span class="type">GDBusObjectManagerClientFlags</span></a> enumeration.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
<td>The owner of the control object (unique or well-known name).</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>object_path</code></em> :</span></p></td>
<td>The object path of the control object.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>get_proxy_type_func</code></em> :</span></p></td>
<td>A <a class="link" href="GDBusObjectManagerClient.html#GDBusProxyTypeFunc" title="GDBusProxyTypeFunc ()"><span class="type">GDBusProxyTypeFunc</span></a> function or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to always construct <a class="link" href="GDBusProxy.html" title="GDBusProxy"><span class="type">GDBusProxy</span></a> proxies.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>get_proxy_type_user_data</code></em> :</span></p></td>
<td>User data to pass to <em class="parameter"><code>get_proxy_type_func</code></em>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>get_proxy_type_destroy_notify</code></em> :</span></p></td>
<td>Free function for <em class="parameter"><code>get_proxy_type_user_data</code></em> or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>A <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>callback</code></em> :</span></p></td>
<td>A <a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> to call when the request is satisfied.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>The data to pass to <em class="parameter"><code>callback</code></em>.</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.30</p>
</div>
<hr>
<div class="refsect2">
<a name="g-dbus-object-manager-client-new-finish"></a><h3>g_dbus_object_manager_client_new_finish ()</h3>
<pre class="programlisting"><a class="link" href="GDBusObjectManager.html" title="GDBusObjectManager"><span class="returnvalue">GDBusObjectManager</span></a> * g_dbus_object_manager_client_new_finish
                                                        (<em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *res</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Finishes an operation started with <a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-new" title="g_dbus_object_manager_client_new ()"><code class="function">g_dbus_object_manager_client_new()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>res</code></em> :</span></p></td>
<td>A <a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> obtained from the <a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> passed to <a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-new" title="g_dbus_object_manager_client_new ()"><code class="function">g_dbus_object_manager_client_new()</code></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>Return location for error or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>A
<a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> object or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>error</code></em> is set. Free
with <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Override the parsed C type with given type"><span class="acronym">type</span></acronym> GDBusObjectManagerClient]</span>
</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.30</p>
</div>
<hr>
<div class="refsect2">
<a name="g-dbus-object-manager-client-new-sync"></a><h3>g_dbus_object_manager_client_new_sync ()</h3>
<pre class="programlisting"><a class="link" href="GDBusObjectManager.html" title="GDBusObjectManager"><span class="returnvalue">GDBusObjectManager</span></a> * g_dbus_object_manager_client_new_sync
                                                        (<em class="parameter"><code><a class="link" href="GDBusConnection.html" title="GDBusConnection"><span class="type">GDBusConnection</span></a> *connection</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClientFlags" title="enum GDBusObjectManagerClientFlags"><span class="type">GDBusObjectManagerClientFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
                                                         <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *object_path</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GDBusObjectManagerClient.html#GDBusProxyTypeFunc" title="GDBusProxyTypeFunc ()"><span class="type">GDBusProxyTypeFunc</span></a> get_proxy_type_func</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> get_proxy_type_user_data</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> get_proxy_type_destroy_notify</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Creates a new <a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> object.
</p>
<p>
This is a synchronous failable constructor - the calling thread is
blocked until a reply is received. See <a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-new" title="g_dbus_object_manager_client_new ()"><code class="function">g_dbus_object_manager_client_new()</code></a>
for the asynchronous version.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>connection</code></em> :</span></p></td>
<td>A <a class="link" href="GDBusConnection.html" title="GDBusConnection"><span class="type">GDBusConnection</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>Zero or more flags from the <a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClientFlags" title="enum GDBusObjectManagerClientFlags"><span class="type">GDBusObjectManagerClientFlags</span></a> enumeration.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
<td>The owner of the control object (unique or well-known name).</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>object_path</code></em> :</span></p></td>
<td>The object path of the control object.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>get_proxy_type_func</code></em> :</span></p></td>
<td>A <a class="link" href="GDBusObjectManagerClient.html#GDBusProxyTypeFunc" title="GDBusProxyTypeFunc ()"><span class="type">GDBusProxyTypeFunc</span></a> function or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to always construct <a class="link" href="GDBusProxy.html" title="GDBusProxy"><span class="type">GDBusProxy</span></a> proxies.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>get_proxy_type_user_data</code></em> :</span></p></td>
<td>User data to pass to <em class="parameter"><code>get_proxy_type_func</code></em>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>get_proxy_type_destroy_notify</code></em> :</span></p></td>
<td>Free function for <em class="parameter"><code>get_proxy_type_user_data</code></em> or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>A <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>Return location for error or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>A
<a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> object or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>error</code></em> is set. Free
with <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Override the parsed C type with given type"><span class="acronym">type</span></acronym> GDBusObjectManagerClient]</span>
</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.30</p>
</div>
<hr>
<div class="refsect2">
<a name="g-dbus-object-manager-client-new-for-bus"></a><h3>g_dbus_object_manager_client_new_for_bus ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                g_dbus_object_manager_client_new_for_bus
                                                        (<em class="parameter"><code><a class="link" href="GDBusConnection.html#GBusType" title="enum GBusType"><span class="type">GBusType</span></a> bus_type</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClientFlags" title="enum GDBusObjectManagerClientFlags"><span class="type">GDBusObjectManagerClientFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
                                                         <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *object_path</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GDBusObjectManagerClient.html#GDBusProxyTypeFunc" title="GDBusProxyTypeFunc ()"><span class="type">GDBusProxyTypeFunc</span></a> get_proxy_type_func</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> get_proxy_type_user_data</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> get_proxy_type_destroy_notify</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
<p>
Like <a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-new" title="g_dbus_object_manager_client_new ()"><code class="function">g_dbus_object_manager_client_new()</code></a> but takes a <a class="link" href="GDBusConnection.html#GBusType" title="enum GBusType"><span class="type">GBusType</span></a> instead of a
<a class="link" href="GDBusConnection.html" title="GDBusConnection"><span class="type">GDBusConnection</span></a>.
</p>
<p>
This is an asynchronous failable constructor. When the result is
ready, <em class="parameter"><code>callback</code></em> will be invoked in the
<a href="./../glib/glib/glib-The-Main-Event-Loop.html#g-main-context-push-thread-default">thread-default main loop</a>
of the thread you are calling this method from. You can
then call <a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-new-for-bus-finish" title="g_dbus_object_manager_client_new_for_bus_finish ()"><code class="function">g_dbus_object_manager_client_new_for_bus_finish()</code></a> to get the result. See
<a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-new-for-bus-sync" title="g_dbus_object_manager_client_new_for_bus_sync ()"><code class="function">g_dbus_object_manager_client_new_for_bus_sync()</code></a> for the synchronous version.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>bus_type</code></em> :</span></p></td>
<td>A <a class="link" href="GDBusConnection.html#GBusType" title="enum GBusType"><span class="type">GBusType</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>Zero or more flags from the <a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClientFlags" title="enum GDBusObjectManagerClientFlags"><span class="type">GDBusObjectManagerClientFlags</span></a> enumeration.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
<td>The owner of the control object (unique or well-known name).</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>object_path</code></em> :</span></p></td>
<td>The object path of the control object.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>get_proxy_type_func</code></em> :</span></p></td>
<td>A <a class="link" href="GDBusObjectManagerClient.html#GDBusProxyTypeFunc" title="GDBusProxyTypeFunc ()"><span class="type">GDBusProxyTypeFunc</span></a> function or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to always construct <a class="link" href="GDBusProxy.html" title="GDBusProxy"><span class="type">GDBusProxy</span></a> proxies.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>get_proxy_type_user_data</code></em> :</span></p></td>
<td>User data to pass to <em class="parameter"><code>get_proxy_type_func</code></em>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>get_proxy_type_destroy_notify</code></em> :</span></p></td>
<td>Free function for <em class="parameter"><code>get_proxy_type_user_data</code></em> or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>A <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>callback</code></em> :</span></p></td>
<td>A <a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> to call when the request is satisfied.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>The data to pass to <em class="parameter"><code>callback</code></em>.</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.30</p>
</div>
<hr>
<div class="refsect2">
<a name="g-dbus-object-manager-client-new-for-bus-finish"></a><h3>g_dbus_object_manager_client_new_for_bus_finish ()</h3>
<pre class="programlisting"><a class="link" href="GDBusObjectManager.html" title="GDBusObjectManager"><span class="returnvalue">GDBusObjectManager</span></a> * g_dbus_object_manager_client_new_for_bus_finish
                                                        (<em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *res</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Finishes an operation started with <a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-new-for-bus" title="g_dbus_object_manager_client_new_for_bus ()"><code class="function">g_dbus_object_manager_client_new_for_bus()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>res</code></em> :</span></p></td>
<td>A <a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> obtained from the <a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> passed to <a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-new-for-bus" title="g_dbus_object_manager_client_new_for_bus ()"><code class="function">g_dbus_object_manager_client_new_for_bus()</code></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>Return location for error or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>A
<a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> object or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>error</code></em> is set. Free
with <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Override the parsed C type with given type"><span class="acronym">type</span></acronym> GDBusObjectManagerClient]</span>
</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.30</p>
</div>
<hr>
<div class="refsect2">
<a name="g-dbus-object-manager-client-new-for-bus-sync"></a><h3>g_dbus_object_manager_client_new_for_bus_sync ()</h3>
<pre class="programlisting"><a class="link" href="GDBusObjectManager.html" title="GDBusObjectManager"><span class="returnvalue">GDBusObjectManager</span></a> * g_dbus_object_manager_client_new_for_bus_sync
                                                        (<em class="parameter"><code><a class="link" href="GDBusConnection.html#GBusType" title="enum GBusType"><span class="type">GBusType</span></a> bus_type</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClientFlags" title="enum GDBusObjectManagerClientFlags"><span class="type">GDBusObjectManagerClientFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
                                                         <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *object_path</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GDBusObjectManagerClient.html#GDBusProxyTypeFunc" title="GDBusProxyTypeFunc ()"><span class="type">GDBusProxyTypeFunc</span></a> get_proxy_type_func</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> get_proxy_type_user_data</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> get_proxy_type_destroy_notify</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Like <a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-new-sync" title="g_dbus_object_manager_client_new_sync ()"><code class="function">g_dbus_object_manager_client_new_sync()</code></a> but takes a <a class="link" href="GDBusConnection.html#GBusType" title="enum GBusType"><span class="type">GBusType</span></a> instead
of a <a class="link" href="GDBusConnection.html" title="GDBusConnection"><span class="type">GDBusConnection</span></a>.
</p>
<p>
This is a synchronous failable constructor - the calling thread is
blocked until a reply is received. See <a class="link" href="GDBusObjectManagerClient.html#g-dbus-object-manager-client-new-for-bus" title="g_dbus_object_manager_client_new_for_bus ()"><code class="function">g_dbus_object_manager_client_new_for_bus()</code></a>
for the asynchronous version.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>bus_type</code></em> :</span></p></td>
<td>A <a class="link" href="GDBusConnection.html#GBusType" title="enum GBusType"><span class="type">GBusType</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>Zero or more flags from the <a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClientFlags" title="enum GDBusObjectManagerClientFlags"><span class="type">GDBusObjectManagerClientFlags</span></a> enumeration.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
<td>The owner of the control object (unique or well-known name).</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>object_path</code></em> :</span></p></td>
<td>The object path of the control object.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>get_proxy_type_func</code></em> :</span></p></td>
<td>A <a class="link" href="GDBusObjectManagerClient.html#GDBusProxyTypeFunc" title="GDBusProxyTypeFunc ()"><span class="type">GDBusProxyTypeFunc</span></a> function or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to always construct <a class="link" href="GDBusProxy.html" title="GDBusProxy"><span class="type">GDBusProxy</span></a> proxies.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>get_proxy_type_user_data</code></em> :</span></p></td>
<td>User data to pass to <em class="parameter"><code>get_proxy_type_func</code></em>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>get_proxy_type_destroy_notify</code></em> :</span></p></td>
<td>Free function for <em class="parameter"><code>get_proxy_type_user_data</code></em> or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>A <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>Return location for error or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>A
<a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> object or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>error</code></em> is set. Free
with <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Override the parsed C type with given type"><span class="acronym">type</span></acronym> GDBusObjectManagerClient]</span>
</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.30</p>
</div>
<hr>
<div class="refsect2">
<a name="g-dbus-object-manager-client-get-connection"></a><h3>g_dbus_object_manager_client_get_connection ()</h3>
<pre class="programlisting"><a class="link" href="GDBusConnection.html" title="GDBusConnection"><span class="returnvalue">GDBusConnection</span></a> *   g_dbus_object_manager_client_get_connection
                                                        (<em class="parameter"><code><a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> *manager</code></em>);</pre>
<p>
Gets the <a class="link" href="GDBusConnection.html" title="GDBusConnection"><span class="type">GDBusConnection</span></a> used by <em class="parameter"><code>manager</code></em>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>manager</code></em> :</span></p></td>
<td>A <a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>A <a class="link" href="GDBusConnection.html" title="GDBusConnection"><span class="type">GDBusConnection</span></a> object. Do not free,
the object belongs to <em class="parameter"><code>manager</code></em>. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.30</p>
</div>
<hr>
<div class="refsect2">
<a name="g-dbus-object-manager-client-get-flags"></a><h3>g_dbus_object_manager_client_get_flags ()</h3>
<pre class="programlisting"><a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClientFlags" title="enum GDBusObjectManagerClientFlags"><span class="returnvalue">GDBusObjectManagerClientFlags</span></a>  g_dbus_object_manager_client_get_flags
                                                        (<em class="parameter"><code><a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> *manager</code></em>);</pre>
<p>
Gets the flags that <em class="parameter"><code>manager</code></em> was constructed with.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>manager</code></em> :</span></p></td>
<td>A <a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>Zero of more flags from the <a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClientFlags" title="enum GDBusObjectManagerClientFlags"><span class="type">GDBusObjectManagerClientFlags</span></a>
enumeration.</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.30</p>
</div>
<hr>
<div class="refsect2">
<a name="g-dbus-object-manager-client-get-name"></a><h3>g_dbus_object_manager_client_get_name ()</h3>
<pre class="programlisting">const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *       g_dbus_object_manager_client_get_name
                                                        (<em class="parameter"><code><a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> *manager</code></em>);</pre>
<p>
Gets the name that <em class="parameter"><code>manager</code></em> is for.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>manager</code></em> :</span></p></td>
<td>A <a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>A unique or well-known name. Do not free, the string
belongs to <em class="parameter"><code>manager</code></em>.</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.30</p>
</div>
<hr>
<div class="refsect2">
<a name="g-dbus-object-manager-client-get-name-owner"></a><h3>g_dbus_object_manager_client_get_name_owner ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *             g_dbus_object_manager_client_get_name_owner
                                                        (<em class="parameter"><code><a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> *manager</code></em>);</pre>
<p>
The unique name that owns the name that <em class="parameter"><code>manager</code></em> is for or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if
no-one currently owns that name. You can connect to the
<a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#GObject-notify"><span class="type">"notify"</span></a> signal to track changes to the
<a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--name-owner" title='The "name-owner" property'><span class="type">"name-owner"</span></a> property.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>manager</code></em> :</span></p></td>
<td>A <a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>The name owner or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if no name owner exists. Free with
<a href="./../glib/glib/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a>.</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.30</p>
</div>
</div>
<div class="refsect1">
<a name="GDBusObjectManagerClient.property-details"></a><h2>Property Details</h2>
<div class="refsect2">
<a name="GDBusObjectManagerClient--bus-type"></a><h3>The <code class="literal">"bus-type"</code> property</h3>
<pre class="programlisting">  "bus-type"                 <a class="link" href="GDBusConnection.html#GBusType" title="enum GBusType"><span class="type">GBusType</span></a>              : Write / Construct Only</pre>
<p>
If this property is not <a class="link" href="GDBusConnection.html#G-BUS-TYPE-NONE:CAPS"><code class="literal">G_BUS_TYPE_NONE</code></a>, then
<a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--connection" title='The "connection" property'><span class="type">"connection"</span></a> must be <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> and will be set to the
<a class="link" href="GDBusConnection.html" title="GDBusConnection"><span class="type">GDBusConnection</span></a> obtained by calling <a class="link" href="GDBusConnection.html#g-bus-get" title="g_bus_get ()"><code class="function">g_bus_get()</code></a> with the value
of this property.
</p>
<p>Default value: G_BUS_TYPE_NONE</p>
<p class="since">Since 2.30</p>
</div>
<hr>
<div class="refsect2">
<a name="GDBusObjectManagerClient--connection"></a><h3>The <code class="literal">"connection"</code> property</h3>
<pre class="programlisting">  "connection"               <a class="link" href="GDBusConnection.html" title="GDBusConnection"><span class="type">GDBusConnection</span></a>*      : Read / Write / Construct Only</pre>
<p>
The <a class="link" href="GDBusConnection.html" title="GDBusConnection"><span class="type">GDBusConnection</span></a> to use.
</p>
<p class="since">Since 2.30</p>
</div>
<hr>
<div class="refsect2">
<a name="GDBusObjectManagerClient--flags"></a><h3>The <code class="literal">"flags"</code> property</h3>
<pre class="programlisting">  "flags"                    <a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClientFlags" title="enum GDBusObjectManagerClientFlags"><span class="type">GDBusObjectManagerClientFlags</span></a>  : Read / Write / Construct Only</pre>
<p>
Flags from the <a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClientFlags" title="enum GDBusObjectManagerClientFlags"><span class="type">GDBusObjectManagerClientFlags</span></a> enumeration.
</p>
<p class="since">Since 2.30</p>
</div>
<hr>
<div class="refsect2">
<a name="GDBusObjectManagerClient--get-proxy-type-destroy-notify"></a><h3>The <code class="literal">"get-proxy-type-destroy-notify"</code> property</h3>
<pre class="programlisting">  "get-proxy-type-destroy-notify" <a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>              : Read / Write / Construct Only</pre>
<p>
A <a href="./../glib/glib/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> for the <a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data in <a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--get-proxy-type-user-data" title='The "get-proxy-type-user-data" property'><span class="type">"get-proxy-type-user-data"</span></a>.
</p>
<p class="since">Since 2.30</p>
</div>
<hr>
<div class="refsect2">
<a name="GDBusObjectManagerClient--get-proxy-type-func"></a><h3>The <code class="literal">"get-proxy-type-func"</code> property</h3>
<pre class="programlisting">  "get-proxy-type-func"      <a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>              : Read / Write / Construct Only</pre>
<p>
The <a class="link" href="GDBusObjectManagerClient.html#GDBusProxyTypeFunc" title="GDBusProxyTypeFunc ()"><span class="type">GDBusProxyTypeFunc</span></a> to use when determining what <a href="./../gobject/gobject/gobject-Type-Information.html#GType"><span class="type">GType</span></a> to
use for interface proxies or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.
</p>
<p class="since">Since 2.30</p>
</div>
<hr>
<div class="refsect2">
<a name="GDBusObjectManagerClient--get-proxy-type-user-data"></a><h3>The <code class="literal">"get-proxy-type-user-data"</code> property</h3>
<pre class="programlisting">  "get-proxy-type-user-data" <a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>              : Read / Write / Construct Only</pre>
<p>
The <a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data to pass to <a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--get-proxy-type-func" title='The "get-proxy-type-func" property'><span class="type">"get-proxy-type-func"</span></a>.
</p>
<p class="since">Since 2.30</p>
</div>
<hr>
<div class="refsect2">
<a name="GDBusObjectManagerClient--name"></a><h3>The <code class="literal">"name"</code> property</h3>
<pre class="programlisting">  "name"                     <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>*                : Read / Write / Construct Only</pre>
<p>
The well-known name or unique name that the manager is for.
</p>
<p>Default value: NULL</p>
<p class="since">Since 2.30</p>
</div>
<hr>
<div class="refsect2">
<a name="GDBusObjectManagerClient--name-owner"></a><h3>The <code class="literal">"name-owner"</code> property</h3>
<pre class="programlisting">  "name-owner"               <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>*                : Read</pre>
<p>
The unique name that owns <a class="link" href="GDBusObjectManagerClient.html#GDBusObjectManagerClient--name" title='The "name" property'><span class="type">"name"</span></a> or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if
no-one is currently owning the name. Connect to the
<a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#GObject-notify"><span class="type">"notify"</span></a> signal to track changes to this property.
</p>
<p>Default value: NULL</p>
<p class="since">Since 2.30</p>
</div>
<hr>
<div class="refsect2">
<a name="GDBusObjectManagerClient--object-path"></a><h3>The <code class="literal">"object-path"</code> property</h3>
<pre class="programlisting">  "object-path"              <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>*                : Read / Write / Construct Only</pre>
<p>
The object path the manager is for.
</p>
<p>Default value: NULL</p>
<p class="since">Since 2.30</p>
</div>
</div>
<div class="refsect1">
<a name="GDBusObjectManagerClient.signal-details"></a><h2>Signal Details</h2>
<div class="refsect2">
<a name="GDBusObjectManagerClient-interface-proxy-properties-changed"></a><h3>The <code class="literal">"interface-proxy-properties-changed"</code> signal</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                user_function                      (<a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> *manager,
                                                        <a class="link" href="GDBusObjectProxy.html" title="GDBusObjectProxy"><span class="type">GDBusObjectProxy</span></a>         *object_proxy,
                                                        <a class="link" href="GDBusProxy.html" title="GDBusProxy"><span class="type">GDBusProxy</span></a>               *interface_proxy,
                                                        <a href="./../glib/glib/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a>                 *changed_properties,
                                                        <a href="./../gobject/gobject/gobject-Boxed-Types.html#GStrv"><span class="type">GStrv</span></a>                     invalidated_properties,
                                                        <a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>                  user_data)                   : <a href="./../gobject/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS"><code class="literal">Run Last</code></a></pre>
<p>
Emitted when one or more D-Bus properties on proxy changes. The
local cache has already been updated when this signal fires. Note
that both <em class="parameter"><code>changed_properties</code></em> and <em class="parameter"><code>invalidated_properties</code></em> are
guaranteed to never be <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> (either may be empty though).
</p>
<p>
This signal exists purely as a convenience to avoid having to
connect signals to all interface proxies managed by <em class="parameter"><code>manager</code></em>.
</p>
<p>
This signal is emitted in the
<a href="./../glib/glib/glib-The-Main-Event-Loop.html#g-main-context-push-thread-default">thread-default main loop</a>
that <em class="parameter"><code>manager</code></em> was constructed in.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>manager</code></em> :</span></p></td>
<td>The <a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> emitting the signal.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>object_proxy</code></em> :</span></p></td>
<td>The <a class="link" href="GDBusObjectProxy.html" title="GDBusObjectProxy"><span class="type">GDBusObjectProxy</span></a> on which an interface has properties that are changing.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>interface_proxy</code></em> :</span></p></td>
<td>The <a class="link" href="GDBusProxy.html" title="GDBusProxy"><span class="type">GDBusProxy</span></a> that has properties that are changing.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>changed_properties</code></em> :</span></p></td>
<td>A <a href="./../glib/glib/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> containing the properties that changed.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>invalidated_properties</code></em> :</span></p></td>
<td>A <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> terminated array of properties that was invalidated.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>user data set when the signal handler was connected.</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.30</p>
</div>
<hr>
<div class="refsect2">
<a name="GDBusObjectManagerClient-interface-proxy-signal"></a><h3>The <code class="literal">"interface-proxy-signal"</code> signal</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                user_function                      (<a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> *manager,
                                                        <a class="link" href="GDBusObjectProxy.html" title="GDBusObjectProxy"><span class="type">GDBusObjectProxy</span></a>         *object_proxy,
                                                        <a class="link" href="GDBusProxy.html" title="GDBusProxy"><span class="type">GDBusProxy</span></a>               *interface_proxy,
                                                        <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>                    *sender_name,
                                                        <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>                    *signal_name,
                                                        <a href="./../glib/glib/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a>                 *parameters,
                                                        <a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>                  user_data)            : <a href="./../gobject/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS"><code class="literal">Run Last</code></a></pre>
<p>
Emitted when a D-Bus signal is received on <em class="parameter"><code>interface_proxy</code></em>.
</p>
<p>
This signal exists purely as a convenience to avoid having to
connect signals to all interface proxies managed by <em class="parameter"><code>manager</code></em>.
</p>
<p>
This signal is emitted in the
<a href="./../glib/glib/glib-The-Main-Event-Loop.html#g-main-context-push-thread-default">thread-default main loop</a>
that <em class="parameter"><code>manager</code></em> was constructed in.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>manager</code></em> :</span></p></td>
<td>The <a class="link" href="GDBusObjectManagerClient.html" title="GDBusObjectManagerClient"><span class="type">GDBusObjectManagerClient</span></a> emitting the signal.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>object_proxy</code></em> :</span></p></td>
<td>The <a class="link" href="GDBusObjectProxy.html" title="GDBusObjectProxy"><span class="type">GDBusObjectProxy</span></a> on which an interface is emitting a D-Bus signal.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>interface_proxy</code></em> :</span></p></td>
<td>The <a class="link" href="GDBusProxy.html" title="GDBusProxy"><span class="type">GDBusProxy</span></a> that is emitting a D-Bus signal.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>sender_name</code></em> :</span></p></td>
<td>The sender of the signal or NULL if the connection is not a bus connection.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>signal_name</code></em> :</span></p></td>
<td>The signal name.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>parameters</code></em> :</span></p></td>
<td>A <a href="./../glib/glib/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> tuple with parameters for the signal.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>user data set when the signal handler was connected.</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.30</p>
</div>
</div>
</div>
<div class="footer">
<hr>
          Generated by GTK-Doc V1.17</div>
</body>
</html>